Format |
Syntax: |
Operation: |
Operands: |
Architecture revision |
Opcode | ||||||||||||
1 |
packsh.ub Rd, Rx, Ry |
Rd[31:24] = SATSU(Rx[31:16], 8); Rd[23:16] = SATSU(Rx[15:0], 8); Rd[15:8] = SATSU(Ry[31:16], 8); Rd[7:0] = SATSU(Ry[15:0], 8); |
{d, x, y} ∈ {0, 1, …, 15} |
Rev1+ |
| ||||||||||||
2 |
packsh.sb Rd, Rx, Ry |
Rd[31:24] = SATS(Rx[31:16], 8); Rd[23:16] = SATS(Rx[15:0], 8); Rd[15:8] = SATS(Ry[31:16], 8); Rd[7:0] = SATS(Ry[15:0], 8); |
{d, x, y} ∈ {0, 1, …, 15} |
Rev1+ |
|
Pack the four signed halfwords located in the two source registers into four bytes in the destina- tion register. Each of the signed halfwords are saturated to unsigned (packsh.ub) or signed bytes (packsh.sb).
Q: |
Flag set if saturation occured in one or more of the partial operations. |
V: |
Not affected. |
N: |
Not affected. |
Z: |
Not affected. |
C: |
Not affected. |